@echo off
echo 正在检查conda环境...

REM 检查命令行参数
set DAEMON_MODE=false
set STOP_APP=false
set RESTART_APP=false

:parse_args
if "%~1"=="" goto end_parse_args
if "%~1"=="-d" set DAEMON_MODE=true
if "%~1"=="--daemon" set DAEMON_MODE=true
if "%~1"=="-s" set STOP_APP=true
if "%~1"=="--stop" set STOP_APP=true
if "%~1"=="-r" set RESTART_APP=true
if "%~1"=="--restart" set RESTART_APP=true
shift
goto parse_args
:end_parse_args

REM 检查conda是否可用
conda --version >nul 2>&1
if %errorlevel% neq 0 (
    echo 错误: 未找到conda命令，请确保已安装Anaconda或Miniconda
    echo 下载地址: https://www.anaconda.com/products/distribution
    pause
    exit /b 1
)

REM 如果是停止或重启模式，直接调用run.py的相应选项
if "%STOP_APP%"=="true" (
    echo 正在激活conda环境...
    call conda activate web
    
    echo 正在停止应用...
    python run.py -s
    
    if "%RESTART_APP%"=="false" (
        pause
        exit /b 0
    )
)

REM 检查环境是否存在
conda env list | findstr "web" >nul 2>&1
if %errorlevel% neq 0 (
    echo 环境不存在，正在创建conda环境...
    conda env create -n web -f environment.yml
    if %errorlevel% neq 0 (
        echo 创建环境失败
        pause
        exit /b 1
    )
    echo 环境创建成功！
) else (
    echo 环境已存在，正在更新...
    conda env update -f environment.yml
    if %errorlevel% neq 0 (
        echo 环境更新失败，尝试使用pip安装依赖...
        call conda activate web
        pip install -r requirements.txt
    )
)

echo 正在激活conda环境...
call conda activate web

REM 确保PyMuPDF正确安装
pip show PyMuPDF >nul 2>&1
if %errorlevel% neq 0 (
    echo 正在安装PyMuPDF...
    pip install PyMuPDF==1.23.7
)

echo 正在启动应用...
if "%DAEMON_MODE%"=="true" (
    echo 以守护进程方式启动...
    python run.py -d
) else if "%RESTART_APP%"=="true" (
    echo 正在重启应用...
    python run.py -r
) else (
    python run.py
)

pause
